package com.zyy.jomap.util;

/**
 * @author zhangyy
 */
public class StringUtil {

    /**
     * 第一个字符转小写
     * @param name  Device
     * @return      device
     */
    public static String firstCharToLower(String name){
        String beanId=name.substring(0,1).toLowerCase()+name.substring(1);
        return beanId;
    }

    /**
     * 第一个字符转大写
     * @param name  device
     * @return      Device
     */
    public static String firstCharToUp(String name){
        String beanId=name.substring(0,1).toUpperCase()+name.substring(1);
        return beanId;
    }

    /**
     * 从import中获取类名
     * @param clazz  com.zyy.jomap.bo.Device
     * @return       Device
     */
    public static String getClazzSimpleName(String clazz){
        int lastDotIndex=clazz.lastIndexOf(".");
        return clazz.substring(lastDotIndex+1);
    }

    /**
     * 去除文件扩展名后的文件名
     * @param fileName  Test.java
     * @return          Test
     */
    public static String removeExtName(String fileName){
        fileName=fileName.substring(0,fileName.lastIndexOf("."));
        return fileName;
    }

    /**
     * 校验属性是否为java基本类型
     * @param fieldClazz  属性的类型：com.zyy.jomap.bo.DeviceBO
     * @return            true:java类型， false：自定义类型
     */
    public static Boolean checkIsJavaBaseType(String fieldClazz){
        String clazzName=getClazzSimpleName(fieldClazz);
        if(clazzName.equals("String")){
            return true;
        }
        if(clazzName.equals("Integer")||clazzName.equals("int")){
            return true;
        }
        if(clazzName.equals("Long")||clazzName.equals("long")){
            return true;
        }
        if(clazzName.equals("Float")||clazzName.equals("float")){
            return true;
        }
        if(clazzName.equals("Double")||clazzName.equals("double")){
            return true;
        }
        if(clazzName.equals("Boolean")||clazzName.equals("boolean")){
            return true;
        }
        if(clazzName.equals("LocalTime")||clazzName.equals("LocalDate")){
            return true;
        }
        return false;
    }
}
